The present invention relates in general to data storage and processing. More specifically, the invention relates to free space management (reclamation).
In hierarchical computer storage systems, intensively used and fast memories are paired with arrays of slower and less frequently accessed devices. One example of high-speed, expensive memory is a direct access storage device file buffer (DASD). Slower memory devices include tape drives and disk drive arrays, which are less expensive than a DASD.
One such hierarchical storage system is a virtual tape storage system (VTS). A VTS includes a plurality of tape devices and tape cartridges. During operation, the VTS is writing data from a host (logical volumes) to the numerous tape devices onto physical tapes on the system. Multiple logical volumes (or Data Sets) are written to one physical tape (Volume Stacking). Tapes having at least 1% of data written thereon are called private tapes.
The data on tapes managed by such tape management systems can be classified into two groups, namely a) active data, i.e., data which is still valid or has not expired yet, and b) inactive data, i.e., data which has expired. Data may expire because an expiration time or date was assigned to the volume at creation, or because it is replaced by a more recent version stored on the system.
As data expire, some tapes are left containing only a small fraction of data that is still current. Since tapes are sequential access storage devices, the inactive data on a tape can only be removed if the entire tape gets rewritten. However, the inactive data on tapes brings inefficiency to the entire system. The more inactive data that is on a tape, the more tapes are needed. In order to optimize the number of tapes being used, the tapes with a relative high amount of inactive data must be copied to other, empty tapes, which are called scratch tapes. This process, in some tape management systems, is called reclamation. However, in order to perform such a reclamation process effectively, a value is needed which defines when a tape is a candidate for reclamation, i.e., a candidate for the data to be copied to a scratched tape. This value is called reclamation threshold. If the percentage of inactive data on a tape is higher than the reclamation threshold assigned, or, in other words, if the percentage of active data on the tape is lower than the reclamation threshold, this tape is a candidate for reclamation.
It has been proposed to provide an automated reclamation scheduling method for managing storage on a virtual tape server. Where reclamation-off times are set by a user, an automated administrator may override the settings depending on the number of scratch tapes that are available. The fewer the scratch tapes that remain available, the more frequently storage reclamation will be performed in the reclamation schedule set by an automated administrator. The proposed method comprises the steps of performing reclamation according to reclamation-off times when the number of scratch tapes is between a first and a second threshold. These values, however, do not give an exact value for the reclamation threshold itself, i.e., they do not define if a specific tape is a candidate for reclamation or not.
In order to perform an effective and user-friendly reclamation process, it is, however, important to know to which value the reclamation threshold itself should be set. In case it is set to a constant value of, e.g., 20%, this would mean that tapes having an amount of less or equal to 20% active data written thereon are candidates for reclamation. This may work in cases where the data expiration has short cycles. In case the expiration cycles are long, it may occur that almost all tapes have about 50% active data, and the system will run out of scratch tapes.
Another example may be that the reclamation threshold is set to a constant value of 80%, in which case tapes having an amount of less than or equal to 80% active data would be candidates for reclamation. Note, almost all private tapes in a system are candidate for reclamation in this case. This would mean that, normally, there are always enough scratch tapes available. The disadvantage, however, is, that the system is continuously busy with reclamation, i.e., eats up ressources, and the tapes are being used too frequently, this has a negative influence on the tape life time.
Therefore, it does not make any sense to set the reclamation value to a constant value. Rather, it is required to calculate and apply the optimum value for a system on a periodic basis.
It is therefore an object of the present invention to provide a method for managing free storage (reclamation) on a tape management system (like virtual tape server) that will overcome the above mentioned disadvantages of the prior art.
This object is achieved by the method disclosed in claim 1 and the system disclosed in claim 9. Advantageous embodiments of the invention are disclosed in the dependent claims.